Computing systems are utilised to store, categorise and deliver many types of information to a wide variety of users. The advent of sophisticated database structures, increased computing power, new search algorithms and an exponential growth in publicly available computer networks, such as the Internet, has seen many enterprises provide at least a portion of their goods, services and information via the Internet.
The security of information held in a computing system is a paramount consideration for many enterprises. For example, in the medical field, access to patient information is governed by strict legal rules by which users can access information.
This has led to the creation of complex systems for setting particular “permission levels” in computing systems. That is, many computing systems include a multi-tiered access system, where different users may have different levels of access to different types of information. The ability to access information may be determined by a permission level attributed to a user, a permission level attributed to a piece of information, or a combination of the two.
The permission levels are often encoded in a particular way. One such way is the encoding of the permission levels into a “bit vector”. That is, an array of bits, where each bit represents a different aspect of the permission level.